frp安装地址:
https://github.com/fatedier/frp/releases
需要一台有公网IP的服务器(服务端B)走反向代理,手头上的电脑(客户端A),需要访问的目标服务器(客户端C,无公网IP)
流程:客户端A想访问客户端C,但是客户端C没公网IP,没办法直接访问,这时候可以通过先访问有公网IP的服务端B,服务器B和客户端C需要先组建一个类似局域网的环境(frp),然后让服务端B走流量访问客户端C,并将内容返回给客户端A。
反向代理是服务端B设置的。
一、小米路由器3(服务器),使用frps,frps.ini。
提一嘴,我的小米路由器(192.168.0.101)是自己房间内,有公网IP的主路由器(192.168.0.1)是在客厅,所以我设置了中继模式,可以通过192.168.0.101访问小米路由器(一级地址),否则是192.168.31.1(二级地址),操作更加麻烦。后续转口转发是通过192.168.0.1主路由器进行的。详细见电信光猫拨号上网的内网穿透操作
[common]bind_port = 7000dashboard_port = 7500dashboard_user = userdashboard_pwd = password
启动./frps -c ./frps.ini,打开路由器IP:7500就可以登录dashboard。内网穿透注意:
路由器IP:内部端口7000和7500,对应转发至公网IP:外部端口a和b。之后就可以通过公网IP:外部端口b访问dashboard。
二、待访问的目标服务器(客户端),使用frpc,frpc.ini。
下载解压frpc_xxx_.tar.gz,修改vim frpc.ini:[common]server_addr = 路由器IP或公网IPserver_port = 7000或外部端口a[ssh]type = tcplocal_ip = 127.0.0.1local_port = 22remote_port = 8000
因为我自己的树莓派设备是和小米路由器是在一个环境内,所以是用的路由器IP:7000的server_addr 和server_port ,那如果是外网的环境是要用公网IP:外部端口a(映射了路由器IP:7000)。启动./frpc -c ./frpc.ini,打开dashboard的TCP发现多了一条链接即成功。 此时通过ssh路由器IP:8000就可以访问目标服务器了,但一般还要进一步内网穿透到公网使用。内网穿透注意:
路由器IP:8000【remote_port 】转发至公网IP:外部端口c。之后就可以通过公网IP:外部端口c访问目标服务器了。
三、加入开机启动项
sudo su #切换root权限vim /etc/rc.local
在exit 0之前加入以下代码,将/path/to/改为frp的绝对路径。
服务器nohup /path/to/frps -c /path/to/frps.ini >/path/to/frps.log &
客户端nohup /path/to/frpc -c /path/to/frpc.ini >/path/to/frpc.log &
点击排行
- python语言属于什么语言?Python特点主要有哪些?
- 目前,Python已经成为求职中最吃香的三大编程语言之一,而且相较于C、C++、Java等语言而言,Python拥有非常独特的优势,通过极少的代码量就可以实现相同的功能,可以有效提升开发者的[+]
- 2 1
- 3 0
- 4 0
- 5 0
-
6
CDH6.3.2部署flink1.14.3出现/opt/cloudera/parcels/FLINK/lib/flink/bin/flink-yarn.sh:17:rotateLogFilesW
0 - 7 0
- 8 0
- 9 0
- 10 0
-
11
Android应用端连接服务端上的Rabbitmq/MQTT1883端口卡在connect方法解决办法
0